const _function = require("../../utils/functionData.js")
Page({
  data: {
    question: {
      // id: 1,
      // title: '如何学习JavaScript？',
      // author: '张三',
      // time: '2023-10-10 14:00',
      // content: '我想系统学习JavaScript，有什么推荐的学习路径吗？',
      // likes: 10,
      // isLiked: false
    },
    commentList: [
      // {
      //   id: 1,
      //   avatar: 'https://example.com/avatar1.jpg',
      //   author: '李四',
      //   content: '可以先从《JavaScript高级程序设计》这本书开始。',
      //   time: '2023-10-10 14:30',
      //   likes: 5,
      //   isLiked: false
      // },
      // {
      //   id: 2,
      //   avatar: 'https://example.com/avatar2.jpg',
      //   author: '王五',
      //   content: '推荐MDN文档，非常全面。',
      //   time: '2023-10-10 15:00',
      //   likes: 3,
      //   isLiked: false
      // }, {
      //   id: 1,
      //   avatar: 'https://example.com/avatar1.jpg',
      //   author: '李四',
      //   content: '可以先从《JavaScript高级程序设计》这本书开始。',
      //   time: '2023-10-10 14:30',
      //   likes: 5,
      //   isLiked: false
      // },
      // {
      //   id: 2,
      //   avatar: 'https://example.com/avatar2.jpg',
      //   author: '王五',
      //   content: '推荐MDN文档，非常全面。',
      //   time: '2023-10-10 15:00',
      //   likes: 3,
      //   isLiked: false
      // }, {
      //   id: 2,
      //   avatar: 'https://example.com/avatar2.jpg',
      //   author: '王五',
      //   content: '推荐MDN文档，非常全面。',
      //   time: '2023-10-10 15:00',
      //   likes: 3,
      //   isLiked: false
      // },
    ],
    userInfo: getApp().globalData.userInfo,
    inputValue: '', // 评论输入框内容
    _UrlGet_: wx.getStorageSync('img_url')
  },
  onLoad: function (options) {
    // console.log("接收到的 Item:", options);
    const item = JSON.parse(decodeURIComponent(options.data));
    console.log("接收到的 Item:", item);
    this.setData({
      question: item
    });
    this.getCommentList(item.id)
  },
  // 获取评论列表
  getCommentList(id) {
    _function.getCommentList(id,'' ,this.getCommentListBack, this)
  },
  getCommentListBack(res) {
    console.log(1213231);
    let dataAll = res.data
    if (dataAll.code == 200) {
      console.log('视频列表', dataAll);
      this.setData({
        commentList: dataAll.rows
      })
      wx.showToast({
        title: dataAll.msg,
        icon: 'none', // 不显示图标
        duration: 1500, // 提示的延迟时间，单位毫秒，默认为 1500
        mask: true, // 是否显示透明蒙层，防止触摸穿透，默认为 `false`
        success: () => {
          // console.log('登录失败提示已显示');
        }
      });
    }
  },
  // 点赞问题
  toggleLike: function () {
    const question = this.data.question;
    question.isLiked = !question.isLiked;
    question.likes += question.isLiked ? 1 : -1;
    this.setData({ question });
  },

  // 点赞评论
  toggleCommentLike: function (event) {
    const commentId = event.currentTarget.dataset.id;
    const commentList = this.data.commentList.map(item => {
      if (item.id === commentId) {
        item.isLiked = !item.isLiked;
        item.likes += item.isLiked ? 1 : -1;
      }
      return item;
    });
    this.setData({ commentList });
  },

  // 输入框内容变化
  onInput: function (event) {
    this.setData({
      inputValue: event.detail.value
    });
  },

  // 提交评论
  submitComment: function () {
    console.log('提交品论');
    const content = this.data.inputValue.trim();
    if (!content) return;
    const newComment = {
      titleId: this.data.question.id,
      // avatar: 'https://example.com/avatar3.jpg', // 当前用户头像
      // author: '当前用户',
      content: content,
      createBy: this.data.userInfo.userId,
      type: getApp().globalData.roleIndex
    };
    console.log('评论',newComment,getApp().globalData.userInfo);
    _function.postComment(newComment, this.postCommentBack, this)

    // this.setData({
    //   commentList: [...this.data.commentList, newComment],
    //   inputValue: ''
    // });

  },

  postCommentBack(res) {
    let dataAll = res.data
    if (dataAll.code == 200) {
      console.log('视频列表', dataAll);
      this.getCommentList(this.data.question.id)
      wx.showToast({
        title: dataAll.msg,
        icon: 'none', // 不显示图标
        duration: 1500, // 提示的延迟时间，单位毫秒，默认为 1500
        mask: true, // 是否显示透明蒙层，防止触摸穿透，默认为 `false`
        success: () => {
          // console.log('登录失败提示已显示');
        }
      });
    }
  },
});